In order to transmit information over a signal transmission channel, it is conventional to use the information to modulate a carrier and impress the modulated carrier on the transmission channel. At the receiver, the received signal is demodulated and the modulation function is recreated, and the transmitted information is extracted from the modulation function. If the information to be transmitted is in analog form, the modulation is generally of the amplitude or frequency of the carrier and the modulation function is able to vary continuously, whereas if the information is in digital form the modulation is usually of the phase of the carrier, or both the amplitude and phase of the carrier, and the modulation function is a pattern having a finite number, generally an integral power of two, of distinct states.
In the case of digital information, the epoch over which information is transmitted is divided into a succession of symbol intervals that are of equal duration. During each symbol interval, the modulation function assumes a state associated with a given symbol and the phase (or amplitude and phase) of the carrier at the transmitter remains constant. In a given symbol interval, a modulation pattern having 2.sup.k distinct states can be used to transmit k bits of information. Thus, a pattern having two distinct states (i.e., binary modulation) can be used to transmit one bit of information during one symbol interval, a modulation pattern having four distinct states can be used to transmit two bits, and so on up to a limit determined by the signal to noise ratio of the transmission channel.
A common method of modulating a carrier in accordance with a modulation pattern having four states (i.e., k=2) is quadrature phase shift keying (QPSK), in which the phase of the carrier is modulated such that during any given symbol interval the carrier at the transmitter has one of four discrete phase angles relative to a reference carrier.
There are two types of QPSK modulation, namely absolute QPSK and differential QPSK. In absolute QPSK, the transmitted information is represented by the phase of the carrier within a symbol interval relative to the reference carrier, whereas in differential QPSK the transmitted information is represented by the phase of the carrier within a symbol interval relative to the phase of the carrier within the previous symbol interval, i.e., the phase shift from interval to interval.
QPSK modulation in a random data pattern substantially eliminates energy at the carrier frequency. Unless a reference carrier is added to the signal or carried on a separate channel, a simple PLL will not be able to regenerate the reference carrier. However differential QPSK can be successfully demodulated if a local carrier of exact frequency and stable phase is available. To detect only changes in phase, the original reference phase is not needed.
A signal at the carrier frequency may be synthesized by locking a signal at N times the carrier frequency (where N is the number of phase states in the modulation pattern, i.e., four in the case of QPSK) to the received signal, and then dividing the frequency of the signal by N in order to recover the exact carrier frequency. This method is subject to the disadvantage that there is no necessary phase relationship between the received signal and the synthesized signal, and therefore an additional step must be carried out in order to set the synthesized signal to the desired phase. In addition, this known method is difficult to implement at high carrier frequencies.
U.S. Pat. No. 4,308,505 discloses a circuit employing a phase-locked loop (PLL) in order to synthesize a replica of the reference carrier. Operation of the carrier recovery PLL is dependent on recovery of a timing signal related to data transitions. The carrier phase is controlled within the boundaries of a phase window by digital feedback to a voltage controlled oscillator (VCO), with the rate of change limited by a loop filter. The size of the phase window potentially increases the data error rate of a data recovery system using the PLL.